// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.systemsjr.jrtim.course;
/**
 * @see com.systemsjr.jrtim.course.Topic
 */
public class TopicDaoImpl
    extends com.systemsjr.jrtim.course.TopicDaoBase
{
    /**
     * @see com.systemsjr.jrtim.course.TopicDao#toTopicVO(com.systemsjr.jrtim.course.Topic, com.systemsjr.jrtim.course.vo.TopicVO)
     */
    public void toTopicVO(
        com.systemsjr.jrtim.course.Topic source,
        com.systemsjr.jrtim.course.vo.TopicVO target)
    {
        // @todo verify behavior of toTopicVO
        super.toTopicVO(source, target);
    }


    /**
     * @see com.systemsjr.jrtim.course.TopicDao#toTopicVO(com.systemsjr.jrtim.course.Topic)
     */
    public com.systemsjr.jrtim.course.vo.TopicVO toTopicVO(final com.systemsjr.jrtim.course.Topic entity)
    {
        // @todo verify behavior of toTopicVO
        return super.toTopicVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.systemsjr.jrtim.course.Topic loadTopicFromTopicVO(com.systemsjr.jrtim.course.vo.TopicVO topicVO)
    {
        // @todo implement loadTopicFromTopicVO
        throw new java.lang.UnsupportedOperationException("com.systemsjr.jrtim.course.loadTopicFromTopicVO(com.systemsjr.jrtim.course.vo.TopicVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.systemsjr.jrtim.course.Topic topic = this.load(topicVO.getId());
        if (topic == null)
        {
            topic = com.systemsjr.jrtim.course.Topic.Factory.newInstance();
        }
        return topic;
        */
    }

    
    /**
     * @see com.systemsjr.jrtim.course.TopicDao#topicVOToEntity(com.systemsjr.jrtim.course.vo.TopicVO)
     */
    public com.systemsjr.jrtim.course.Topic topicVOToEntity(com.systemsjr.jrtim.course.vo.TopicVO topicVO)
    {
        // @todo verify behavior of topicVOToEntity
        com.systemsjr.jrtim.course.Topic entity = this.loadTopicFromTopicVO(topicVO);
        this.topicVOToEntity(topicVO, entity, true);
        return entity;
    }


    /**
     * @see com.systemsjr.jrtim.course.TopicDao#topicVOToEntity(com.systemsjr.jrtim.course.vo.TopicVO, com.systemsjr.jrtim.course.Topic)
     */
    public void topicVOToEntity(
        com.systemsjr.jrtim.course.vo.TopicVO source,
        com.systemsjr.jrtim.course.Topic target,
        boolean copyIfNull)
    {
        // @todo verify behavior of topicVOToEntity
        super.topicVOToEntity(source, target, copyIfNull);
    }

}